﻿//Copyright (C) <2013>  <jonathan cleeve norton> All Rights Reserved 
//Contact jon.norton@fin-plus.co.uk website <http://www.fin-plus.co.uk/>
using System;
using System.Collections.Generic;
using System.ServiceModel;
using FinPlusInterfaces;

namespace FinPlusBaseCore
{
    [ServiceContract]
    public interface IPodCallback
    {
        [OperationContract(IsOneWay = false)]
        [FaultContract(typeof(Exception))]
        void DispatchPod(Env env, string serviceKey, string guid, IEnumerable<Bean> value, ChangeType changeType);

        [OperationContract(IsOneWay = false)]
        [FaultContract(typeof(Exception))]
        void DispatchBean(Env env, string serviceKey, string guid, int id, Bean value, ChangeType changeType);

        [OperationContract(IsOneWay = false)]
        [FaultContract(typeof(Exception))]
        void DispatchCompleted(Env env, string serviceKey, string guid);
    }
}
